﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ChartSharp
{
    public class LineChart : Chart
    {
        protected AxisType _types;
        protected AxisRange _ranges;
        protected AxisLabels _labels;
        protected DataScale _dataScales;
        protected LineStyles _lineStyles;

        public LineChart()
            : base(GetLineChartType())
        {
        }

        public LineChart(int width, int height)
            : base(GetLineChartType(), new Size(width, height))
        {
        }

        public LineChart(Size size)
            : base(GetLineChartType(), size)
        {
        }

        public LineChart(Size size, DataSets data)
            : base(GetLineChartType(), size, data)
        {
        }

        public LineChart AxisType(AxisType types)
        {
            _types = types;
            return this;
        }

        public LineChart AxisRange(AxisRange ranges)
        {
            _ranges = ranges;
            return this;
        }

        public LineChart AxisLabel(AxisLabels labels)
        {
            _labels = labels;
            return this;
        }

        public LineChart DataScale(DataScale dataScales)
        {
            _dataScales = dataScales;
            return this;
        }

        public LineChart LineStyle(LineStyles styles)
        {
            _lineStyles = styles;
            return this;
        }

        private static Type GetLineChartType()
        {
            return new Type("lc");
        }
    }
}
